package xginxnote

import (
	"encoding/json"

	"gitee.com/xiaoyutab/xgotool/optional/xnote"
	"gitee.com/xiaoyutab/xgotool/xgin"
	"gitee.com/xiaoyutab/xgotool/xstring"
	"github.com/gin-gonic/gin"
)

// 获取分页列表数据
//
//	POST	/create.menu
func createMenu(c *gin.Context) *xgin.Response {
	type fid_struct struct {
		Id        json.Number `form:"id" json:"id"`
		Fid       json.Number `form:"fid" json:"fid"`               //上级ID
		Name      string      `form:"name" json:"name"`             //标签/目录名称
		Type      json.Number `form:"type" json:"type"`             //所属分类 1-菜单 2-内容
		MenuId    string      `form:"menu_id" json:"menu_id"`       //所属目录/标签，关联menu
		CreatedAt string      `form:"created_at" json:"created_at"` //添加时间
	}
	temp := fid_struct{}
	if err := xgin.Bind(c, &temp); err != nil {
		return xgin.Resp().Error(err)
	}
	menu := xnote.NoteMenu{
		Id:        xstring.JUint(temp.Id),
		Fid:       xstring.JUint(temp.Fid),
		UserId:    c.GetUint("uid"),
		Name:      temp.Name,
		Type:      xstring.JUint8(temp.Type),
		MenuId:    temp.MenuId,
		CreatedAt: temp.CreatedAt,
	}
	if menu.Name == "" {
		return xgin.Resp().ErrorString("栏目标题不能为空")
	}
	err := xnote.CreateMenu(&menu)
	if err != nil {
		return xgin.Resp().Error(err)
	}
	return xgin.Resp().SuccessEmpty()
}
